/***********************************************
* Filename:  		DXScreenRender.h
* Date:      		01/12/2014
* Mod. Date: 		01/12/2014
* Author:    		Night
* Purpose:   		Creates a quad which will uniformly
					fit the screen and render our "texture"
************************************************/

#ifndef DXSCREENRENDERER_H_
#define DXSCREENRENDERER_H_

#include "../RenderIncludes.h"

class CDXScreenRender
{
public:
	CDXScreenRender( void );
	~CDXScreenRender( void );

	void Init( IDirect3DDevice9 **_ppDevice, const unsigned int _unWidth, const unsigned int _unHeight );
	void Release( void );

	void UpdateQuad( const unsigned int _unWidth, const unsigned int _unHeight );
	void UpdateTexture( const char *_szFilePathToTexture );
	void UpdateTexture( void );

	void Render( void );

private:
	IDirect3DDevice9			**m_ppDevice;

	ID3DXEffect					*m_pEffect;
	IDirect3DTexture9			*m_pTexture;

	IDirect3DVertexBuffer9		*m_pVertexBuffer;
	IDirect3DVertexDeclaration9	*m_pVertexDecl;
	IDirect3DIndexBuffer9		*m_pIndexBuffer;
};

#endif